﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
//给你一个长度为 n 的整数数组 nums 。请你构建一个长度为 2n 的答案数组 ans ，
// 数组下标 从 0 开始计数 ，对于所有 0 <= i < n 的 i ，满足下述所有要求：
//	ans[i] == nums[i]
//	ans[i + n] == nums[i]
//	具体而言，ans 由两个 nums 数组 串联 形成。
//
//	返回数组 ans 。
//int * getConcatenation(int* nums, int size, int *returnsize)
//{
//	*returnsize = size * 2;
//	int* ans = (int*)malloc(sizeof(int) * (*returnsize));
//	for (int i = 0;i<size;i++)
//	{
//		ans[i] = nums[i];
//		ans[i + size] = nums[i];
//	}
//	
//	return ans;
//}


//int main()
//{
//	int* arr = malloc(sizeof(int) * 20);
//	free(arr);
//	arr = NULL;
//	arr = calloc(20, sizeof(int));
//	arr = realloc(arr, 10*4);
//	free(arr);
//	arr = NULL;
//
//	return 0;
//}

//使用malloc函数模拟开辟一个3 * 5的整型二维数组，开辟好后，使用二维数组的下标访问形式，访问空间。
int main()
{
	int(*arr)[5] = (int(*)[5])malloc(5 * sizeof(int) * 3);
	for (int i = 0; i < 3; i++)
	{
		int j = 0;
		for (j = 0; j < 5; j++)
		{
			arr[i][j] = j + 1;
		}
	}

	for (int i = 0; i < 3; i++)
	{
		int j = 0;
		for (j = 0; j < 5; j++)
		{
			printf("%d ", arr[i][j]);

		}
		printf("\n");

	}
	free(arr);
	arr = NULL;
	return 0;
}
